//=========================================================================
//
// cutils.h
//
// Prototype functions for cutils.c
// C-extensions for the implementation of the Gibson & Robinson model 
// in Python.
//
//=========================================================================

/*
    randmatrix(n, c, seed):
    n       -- number of elements (cells)
    c       -- probability
    seed    -- seed (if 0 None)

    Returns a symetric matrix of dimension nxn. It contains 
    random elements that takes the value one with a probability of c.
*/
static PyObject *randmatrix(PyObject *self, PyObject *args);

/*
    randomvector(n, c, seed):
    n       -- number of elements (cells) 
    c       -- probability
    seed    -- seed (if 0 None)

    Returns a vector with n random elements 
    that takes the value one with a probability of c.
    probability c of being 1.
*/
static PyObject *randvector(PyObject *self, PyObject *args);

/*
    clipped (Z, W)
    brutal force clippin rule
*/
static PyObject *clipped(PyObject *self, PyObject *args);
//=========================================================================

//=========================================================================
/* Utility functions                                                     */
